/**
 * 
 */
package com.wkr.action;

import java.util.List;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;

import com.wkr.bean.EmpBean;
import com.wkr.service.IEmpAddInfoService;
import com.wkr.service.ILoginService;
import com.wkr.tools.MyTools;
@Controller //控制层
public class LoginAction {
	// 依赖注入【反转控制】
		// 面向接口的编程
		@Resource
		private ILoginService loginS;// 按名称匹配进行注入
		@Resource
		IEmpAddInfoService EmpAdd;

		@RequestMapping("/LoginAction")
		public String dologin(EmpBean eb, HttpServletRequest request) {
			// 调用service层进行登录业务逻辑处理
			System.out.println("用户名：" + eb.getEmpName());
			System.out.println("密码：" + eb.getEmpPsw());
			request.getSession().setAttribute("user", eb.getEmpName());
			System.out.println("获得的session:" + request.getSession().getAttribute("user"));
			System.out.println("获得的request:" + request.getParameter("empName"));
			List<EmpBean> list = loginS.LoginInfo(eb);
			if(list != null && list.size() > 0) {
				// 返回值是view的映射路径
				// 注意：返回的路径是剔除前缀和后缀之后的内容：
				// 例如返回视图页面的路径是：/WEB-INF/pages/logined.jsp，则只需要返回 logined即可
				return "main";
			}else {
				return "../../index";
			}
		}
		
		@RequestMapping("/AddInfo")
		public String AddInfo(EmpBean eb, HttpServletRequest request,  @RequestParam("file_empImg") MultipartFile file_empImg) {
			// 调用service层进行登录业务逻辑处理
			MyTools.UploadFile(eb, request, "empImgs", "empImg", file_empImg);
			// 调用service层的业务逻辑处理
			System.out.println(eb);
			int i = EmpAdd.EmpAddInfo(eb);
			if(i > 0)
				return "../../helloworld";
			else
				return "../../indexX";
			// 例如返回视图页面的路径是：/WEB-INF/pages/logined.jsp，则只需要返回 logined即可
		}
		
		@RequestMapping("/QueryInfo")
		public String QueryInfo(EmpBean eb) {
			// 调用service层进行登录业务逻辑处理
			System.out.println(eb);
			int i = EmpAdd.EmpAddInfo(eb);
			if(i > 0)
				return "../../helloworld";
			else
				return "../../indexX";
			// 例如返回视图页面的路径是：/WEB-INF/pages/logined.jsp，则只需要返回 logined即可
		}
		
		@ResponseBody
		@RequestMapping("/SelectInfo")
		public List<EmpBean> SelectInfo(EmpBean eb){
			List<EmpBean> list = loginS.queryInfo(eb);
			return list;
		}
		
		@ResponseBody
		@RequestMapping("/UpdateInfo")
		public int UpdateInfo(EmpBean eb, HttpServletRequest request,  @RequestParam("file_empImg") MultipartFile file_empImg){
			MyTools.UploadFile(eb, request, "empImgs", "empImg", file_empImg);
			int i = loginS.UpdateById(eb);
			return i;
		}
}
